package com.gagakuai.bpm.common.enums;

public enum BusinessCodeEnum {

    /*
     *
     *
     *  通用业务状态码： 书写规则： 加COMMON 前缀
     *    1：请求重复提交
     */
    COMMON_IS_REAPTED_REQUESTED(10001, "请不要重复提交"),

    COMMON_PARAM_NOT_NULL(10001, "参数不能为空"),

    COMMON_GET_USER_FAILED(10002, "获取用户失败"),

    /*
     *
     * 系统错误
     *
     *
     */
    COMMON_SYSTEM_ERROR(500, "服务器出错！请稍后再试"),


    /*
     * 文件状态码
     */
    FILE_UPLOAD_SUCCESS(200, "文件上传成功!"),

    FILE_UPLOAD_FAILED(40101, "文件上传成功!"),

    FILE_DELETED_SUCCESS(200, "文件删除成功!"),

    FILE_DOWNLOAD_SUCCESS(200, "文件下载成功!"),


    /*
     *
     *  bpm 工作流
     */
    BPM_COMMON_QUERY_TRANCE_SUCCESS(200, "查询办理轨迹成功"),


    BPM_COMMON_QUERY_WORK_FLOW_DEFINITION_SUCCESS(200, "获取工作流定义文件成功"),


    ENG_RISK_ASSIGATE_SUCCESS(200, "发起发动机风险空停评估成功！"),


    BPM_NOT_ALLOW_START(40301, "状态不为【编写中】不能开启工作流!"),

    BPM_ASSIGATE_NOT_ALLOW_NULL(40301, "办理人不能为空！"),

    BPM_FINISHED_TASK(200, "成功完成任务!"),

    BPM_FINISHED_TASK_FAILED(40302, "完成任务失败!"),

    BPM_REJECTED_TASK_SUCCES(200, "成功拒绝任务!"),

    BPM_REJECTED_TASK_FAILED(40304, "拒绝任务失败!"),


    /*
     * 办理人不能为空
     */
    BPM_DO_WORK_NOT_NULL(40403, "办理人不能为空"),

    /*
     * 受委托人不能为空
     */
    BPM_DELEGATION_WORK_NOT_NULL(40404, "受委托人不能为空"),

    /*
     * 判断是否通过不能为空！
     */
    BPM_DO_PASS_NOT_NULL(40404, "是否通过不能为空"),

    /*
     * 判断是否通过不能为空！
     */
    BPM_QUERY_BUSNESS_INFO_BUSCCESS(200, "获取业务信息成功"),


    /*
     * Bpm撤销流程成功
     */
    BPM_WITH_DRAW_SUCCESS(200, "Bpm撤销流程成功"),

    /*
     * bpm撤销流程失败
     */
    BPM_WITH_DRAW_FAILED(20001, "Bpm撤销流程失败"),


    /*
     * bpm回退到上一步失败
     */
    BPM_RETURN_LAST_STEP_FAILED(20002, "Bpm撤销回退到上一步失败"),

    /*
     * bpm回退到第一步失败
     */
    BPM_RETURN_FIRST_STEP_FAILED(20003, "Bpm撤销回退到第一步失败"),


    /*
     * bpm同步人员失败
     */
    BPM_SYNC_ACCOUNT_FAILED(20004, "bpm同步人员失败"),

    /*
     * 流程Id不能为空
     */
    PROCESSID_NOT_ALLOW_NULL(2002, "流程Id不能为空"),

    /*
     * 加签人已经存在
     */
    ADD_INSTANCE_HAS_EXITED(2003, "加签人已经存在！");





    private final int code;

    private final String description;

    BusinessCodeEnum(int code, String description) {
        this.code = code;
        this.description = description;
    }

    public int getCode() {
        return this.code;
    }

    public String getDescription() {
        return this.description;
    }
}
